package Day04作业;
/*
 * @Description: 
 * @Author: Aroma
 * @Date: 2024-09-05 15:06:27
 * @LastEditors: Aroma
 * @LastEditTime: 2024-09-05 19:07:20
 * @别瞎看: 你个无脑牛马
 */
import java.util.Random;
import java.util.Scanner;
public class Test6{
    public static void main(String[] args) {
        //调用随机生成的方法  生成一个长度为20的数组
        int[] arrays=getArrays(20);
        //输出数组
        System.out.println("生成的数组为:");
        //遍历生成的数组
        for(int num:arrays){
            //输出形式为   数(空格)数(空格)数(空格)数(空格)...
            System.out.print(num+" ");
        }
        //换行让用户输入下一条语句
        System.out.println();

        //键盘获取  
        Scanner Scanner=new Scanner(System.in);
        //提示用户输入要查找的数字
        System.out.println("请输入要查找的数：");
        

        //索引查找
        //定义一个新的索引存放使用完方法反回来的值（对应数的索引i 或 -1)
        //while判断循环停止
        while (true) {
            //将键盘获取传给查找的数
            int numbers = Scanner.nextInt();
            //调用索引查找方法
            int index=findNumber(arrays, numbers);
                if(index!=-1){
                    System.out.println("数"+numbers+"存在，在第"+index+"位（注：输入-1将退出程序）");
              }else{
                    System.out.println("数"+numbers+"不存在（注：输入-1将退出程序）");
            }
            if (numbers == -1) {
                //退出
                break;
            }
        }
        Scanner.close();
        System.out.println("用户调停程序");
    }
    
    
    //创建随机生成指定长度数组的方法
    public static int[] getArrays(int length){
        //创建一个新数组存放生成的数组
        int[] getArrays=new int[length];
        //随机生成
        Random random=new Random();
        //循环遍历
        for(int i=0;i<length;i++){
            //假设只生成0~9999之间的数
            getArrays[i]=random.nextInt(10000);
        }
        //返回新数组
        return getArrays;
    }

    //创建用索引查找指定数组中的指定数字
    public static int findNumber(int[] arrays,int number){
        //定义索引i 循环遍历
        for(int i=0;i<arrays.length;i++){
            //找到
            if(arrays[i]==number){
                //返回 索引
                return i;
            }
        }//没找到  返回-1
        return -1;
    }
}